package com.yupi.yuaiagent.dto;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@NoArgsConstructor
@AllArgsConstructor
public class ThoughtProcessStreamDTO {
    /**
     * 消息类型：thinking（思考过程）或 content（主要内容）
     */
    private String type;

    /**
     * 消息内容
     */
    private String content;

    /**
     * 当前步骤
     */
    private int step;

    /**
     * 总步骤数
     */
    private int totalSteps;

    /**
     * 时间戳
     */
    private long timestamp;

    /**
     * 创建思考过程消息
     */
    public static ThoughtProcessStreamDTO createThinking(String content, int step, int totalSteps) {
        return new ThoughtProcessStreamDTO("thinking", content, step, totalSteps, System.currentTimeMillis());
    }

    /**
     * 创建主要内容消息
     */
    public static ThoughtProcessStreamDTO createContent(String content, int step, int totalSteps) {
        return new ThoughtProcessStreamDTO("content", content, step, totalSteps, System.currentTimeMillis());
    }
}